#include<bits/stdc++.h>
using namespace std;
#define int long long

int a[100005], b[100005];
struct node {
	int a, b;
} t[100005];

signed main() {
	int n;
	cin >> n;
	int sumA = 0, sumB = 0;
	for (int i = 1; i <= n; i++)	cin >> a[i], sumA += a[i];
	for (int i = 1; i <= n; i++)	cin >> b[i];
	for (int i = 1; i <= n; i++)	t[i] = {a[i], b[i]};

	sort(t + 1, t + n + 1, [](node x, node y) {
		return x.b + x.a * 2 > y.b + y.a * 2;
//		return x.b + x.a > y.b + y.a;
	});

	for (int i = 1; i <= n; i++) {
		sumA -= t[i].a;
		sumB += t[i].a + t[i].b;
		if (sumB > sumA) {
			cout << i;
			break;
		}
	}
	return 0;
}
